#ifndef HIGHERORDERFUNCTIONS_H
#define HIGHERORDERFUNCTIONS_H

#include "LinkedList.h"
#include "Pair.h"

void Map(struct LinkedList* list, void*(*f)(void* element));
int Exists(const struct LinkedList* const list, int(*predicate)(void* element));
struct LinkedList* Zip(const struct LinkedList* const l1, const struct LinkedList* l2);

#endif

